package com.dragon.modules.yuegou.service.merchant;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dragon.common.web.PageRequest;
import com.dragon.modules.yuegou.entity.merchant.MerchantLevelRuleEntity;
import com.dragon.modules.yuegou.model.merchant.MerchantLevelRule;

import java.util.List;

/**
 * 等级规则 服务接口
 *
 * @author pbuilder generated
 * @date 2019-09-23 15:26:31
 * @version 2.0
 */
public interface MerchantLevelRuleService extends IService<MerchantLevelRuleEntity> {

    /**
     * 据id查询等级规则和费用
     * @param id
     * @return
     */
    MerchantLevelRule getLevelRule(String id);

    /**
     * 商户等级上下架
     *
     * @param id
     */
    void shelveOrDown( String id);

    /**
     * 商户等级规则及费用创建
     * @param query
     */
    void insertMerchantLevelRule(MerchantLevelRule query);

    /**
     * 按等级名称模糊查询
     * @param page
     * @param merchantLevelRule
     * @return
     */
    IPage<MerchantLevelRule> searchList(PageRequest page, MerchantLevelRule merchantLevelRule);

    /**
     * 查询所有等级名称
     * @return
     */
    List<MerchantLevelRule> searchLevelName();

    /**
     * 修改商家等级信息
     * @param query
     */
    void updateMerchantLevelRule(MerchantLevelRule query);


    /**
     * 所有商户等级列表含详情
     * @return
     */
    List<MerchantLevelRule> getDetailList();

    /**
     * 所有的商户等级除默认的以外
     * @return
     */
    List<MerchantLevelRule> getBuyList();

    /**
     * 获取等级列表
     * */
	List<MerchantLevelRule> getList(String merchantId);
}